package Job.Dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "岗位类Dto类 (JobDto)")
public class JobDto {
    @Schema(description = "主键, 唯一标识", example = "1")
    private int id;

    @Schema(description = "公司id", example = "1001")
    private Integer companyId;

    @Schema(description = "岗位种类", example = "技术类")
    private Integer categoryId;

    @Schema(description = "城市", example = "北京")
    private String city;

    @Schema(description = "薪资下界", example = "1")
    private Integer salaryL;

    @Schema(description = "薪资上界", example = "10")
    private Integer salaryR;

    @Schema(description = "学历要求", example = "1", allowableValues = {"不限", "大专", "本科"})
    private String degree;

    @Schema(description = "职位标题", example = "Java开发工程师")
    private String title;

    @Schema(description = "岗位职责", example = "负责开发与维护项目")
    private String duties;

    @Schema(description = "岗位要求", example = "5年以上开发经验")
    private String requests;

    @Schema(description = "优先条件", example = "有大数据经验", nullable = true) // 可以为空
    private String priorities;

    @Schema(description = "开始时间", example = "2024-01-01")
    private LocalDate startTime;

    @Schema(description = "结束时间", example = "2024-12-31")
    private LocalDate endTime;
}
